Wir hatten ja irgendwann vorletzte Woche oder so was angefangen, uns so ganz elementare Datenstrukturen
anzugucken. Was sind Zahlen? Im Moment sind wir bei was sind Buchstaben? Was sind die Probleme und
warum sind die Lösungen ungefähr so wie sie sind und wie gehe ich damit in Pfeifen um? Wir wollen
mit Zahlen, mit Buchstaben, später mit Dokumenten und allen solchen Dingen, wollen wir programmieren
können, um irgendwelche Dinge zu automatisieren. Wir hatten uns angeguckt, was Buchstaben sind.
Buchstaben einerseits, das heutzutage und wahrscheinlich auch auf die Zukunft, die Sie
und beziehungsweise ich erleben werden, wird das über den Unicode-Standard geregelt. Es ist
wichtig, dass man solche Sachen standardisiert, denn es ist ja immer ein Coding-Vorgang. Wir
kriegen einen Buchstaben, ob das jetzt nun eine isländische Rune ist oder das lumpige kleine A oder
so etwas und da müssen wir das in eine Zahl umwandeln und dann gibt es noch einen Dekodierungsvorgang,
der das aus der Zahl wieder an einen Buchstaben macht, den Sie zum Beispiel auf dem Bildschirm
sehen oder auf dem Drucker oder was auch immer. Wenn man da zwei verschiedene Standards verwendet,
großer Mist. Wenn man sich vor allen Dingen bei einem, sagen wir mal, UTF-8-codierten Unicode
vorstellt und irgendjemand will das als ASCII oder ISO Latin 1 oder so etwas dekodieren,
dann guckt er sich jedes Byte einzeln an, weil es ja nur um Bytes geht und auch das,
was eigentlich als zweites Byte gedacht wird, ist hinterher eine eigene Buchstabe und natürlich
hat man überhaupt keine Kontrolle darüber, was da als Buchstaben steht und dann kriegt man so den,
manchmal sieht man das, ich weiß nicht, ob Ihnen das schon passiert ist, wenn der Drucker sozusagen
statt einer Seite vernünftigen Text 100 Seiten Buchstaben-Salat ausdruckt, ist mal sehr ärgerlich.
Das ist genau das, wo solche Sachen herkommen. Und im Unicode-Standard haben wir, wie gesagt,
zwei Dinge. Das eine ist ein Satz von Buchstaben, der wird fortlaufend weiter gepflegt,
fortlaufend neue Buchstaben kommen dazu, nicht sehr viele. Und diese Codierungen UTF-8, UTF-16,
UTF-32. Und das wird auch so erst mal bleiben. Und jetzt kann man sich fragen, kann ich mit den
Bytes dann auch rechnen? Und damit hatten wir das letzte Mal angefangen, wir hatten irgendwie die
Buchstaben mit der Ortfunktion in Zahlen verwandelt, dann hatten wir 32 dazugezählt oder abgezogen,
um sozusagen in der ASCII-Range Groß- oder Kleinbuchstaben machen und so weiter und haben
damit ein bisschen rumgespielt. So weit sind wir das letzte Mal gekommen. Das nächste, wozu ich
kommen möchte, ist, wie schreiben wir denn Buchstaben, die eine andere Bedeutung haben?
Oder die nicht auf unserer Tastatur sind? Zum Beispiel, wie schreiben wir einen neue Zeilen-Buchstaben?
Wenn ich auf das Enter- oder Return-Taste drücke, dann springt das in die nächste Zeile. Aber wenn
ich jetzt sozusagen nach der suchen will oder wenn ich die sozusagen in einem String drin haben will,
wie mache ich das denn? Und da gibt es eine spezielle Technik. Also einerseits kann man, wie man sagt,
Literale verwenden, also der Buchstabe Klein A ist literal der Buchstabe Klein A. Was macht der?
Der sozusagen steht dafür, ein Klein A zu schreiben. Das funktioniert auch recht gut,
bis auch für so ein paar Sachen. Und dafür gibt es dann die Technik des Escaping. In Deutschen
heißen es Escape Buchstaben. Das ist sehr häufig das Backslash, manchmal aber auch was anderes.
Und da heißt tatsächlich auf Deutsch Fluchtbuchstabe und Escaping ist Flüchten,
aber das kriegt man in falschen Hals, deswegen sage ich Escaping. Das ist natürlich nicht besser,
weil es auf Englisch auch nur Flüchten heißt, aber zumindest kann man es leichter als Fachwort
identifizieren. Ja und es gibt so ein paar Sachen. Wenn ich einen String schreiben will,
Gänsefüßchen bla bla bla bla bla und in dem bla bla bla bla bla sollen zum Beispiel Zeilenumbrüche
sein, dann schreibe ich nicht Zeilenumbruch, weil das ja zum Beispiel das Gänsefüßchen unter
Umständen kaputt machen würde oder so etwas, sondern ich nehme einen Backslash und das
Backslash als Escape Buchstabe sagt Python in diesem Fall nur den nächsten Buchstaben
oder die nächste Buchstabenkette möchte ich nicht literal verstanden wissen. So ein Umschalter,
das sagt den nächsten Buchstaben typischerweise, manchmal auch mehr, je nachdem wie es geht,
nicht normal interpretieren, sondern speziell interpretieren. Wenn wir zum Beispiel einen
Zeilenumbruch machen wollen, dann schreiben wir Backslash n. Wenn wir nur n schreiben,
dann meinen wir ein kleines n. Backslash n hat eine andere Bedeutung als n, das sagt der Backslash
und das sagt einfach Zeilenumbruch. Da gibt es noch ein paar mehr von. Wenn ich in einem String
Presenters
Zugänglich über
Offener Zugang
Dauer
01:31:57 Min
Aufnahmedatum
2024-11-28
Hochgeladen am
2024-11-29 22:29:05
Sprache
de-DE
Die zweite Hälfte der Vorlesung ist leider ohne Ton.